﻿using System;
using System.Collections.Generic;
using System.Text;
using System.Configuration.Provider;
using NLBS.Provider;
using System.Collections.Specialized;

namespace NLBS.Install
{
   public abstract class InstallProvider:ProviderBase
    {

       private static InstallProvider provider;
       public InstallProvider db;
       private static GenericProviderCollection<InstallProvider> providers = 
           ProviderConfigurationHelper.LoadProviderCollection<InstallProvider>("Install", out provider);
       public override void Initialize(string name, NameValueCollection config)
       {
           base.Initialize(name, config);
       }

       public static InstallProvider Instance()
       {
           return provider;
       }

       public abstract void InitializeDataBase(string dataSource, string dataName, string userName, string password);

       public abstract bool TestCollection(string dataSource, string dataName, string userName, string password);

       public abstract void InitBlog(string adminName, string adminPassword, string blogTitle);
    }
}
